package com.cctc.juc.demo.Athread.Bcreate;
/**
 * 面试题：
 * 1. 在 Java 中，创建线程的方式有哪些？
 * 1）继承 Thread 类；
 * 2）实现 Runnable 接口，定制目标执行任务（target），实现 run() 方法；
 * 3）实现 Callale 接口，定制带返回值和显式抛出异常的目标执行任务，实现 call() 方法，并使用 Future 类获取目标任务执行结果。
 * 4）使用线程池创建 [复用] 线程。
 * 另，继承 Thread 类与实现 Runnable 或 Callable 接口来创建线程，有何区别？
 * 参考答案：Java 不支持类的多重继承，但允许调用多个接口。如果想要继承其他类，当然是调用 Runnable 接口更好一些，即：
 * - 首先，覆写 Runnable() 或 Callable 接口创建线程可以避免单继承的局限性。
 * - 其次，实现 Runnable() 或 Callable 接口的 run() 或 call() 方法定制目标执行任务（target），可以更好的体现共享的概念，即可以在任何线程环境下进行共享。
 */